#pragma once

#include <QColor>
#include "FITKInterfaceCustomDataAPI.h"
#include "FITK_Kernel/FITKCore/FITKAbstractNDataObject.h"
#include "FITK_Kernel/FITKCore/FITKVarientParams.h"
#include "FITK_Kernel/FITKCore/FITKAbstractDataManager.hpp"

namespace Interface
{
	class FITKInterfaceCustomDataAPI FITKCDPost3DFLuid : public Core::FITKAbstractNDataObject, public Core::FITKVarientParams
	{
	public:
		explicit FITKCDPost3DFLuid() = default;
		virtual ~FITKCDPost3DFLuid() = default;

		// SET
		void setColoring(int nVal);
		void setSingle_Color(QColor color);
		void setVisible(bool bVal);
		void setOpicity(double dVal);
		void setDisplay_Mode(int nVal);

		// GET
		int getColoring();
		QColor getSingle_Color();
		bool getVisible();
		double getOpicity();
		int getDisplay_Mode();
	};


	class FITKInterfaceCustomDataAPI FITKCDPost3DFLuidManager : public Core::FITKAbstractDataManager<FITKCDPost3DFLuid>
	{
	public:
		explicit FITKCDPost3DFLuidManager() = default;
		virtual ~FITKCDPost3DFLuidManager() = default;
	};
}

